package baduga.core;
/**
 * 
 */


import java.awt.Color;


/**
 * @author Jan Czajkowski
 *
 */
public class  Core_Game_Cfg {
	/** TODO: Przemyślec czy nie zrobić to na literałach, ew. CONSTANSACH */

	
	/** */
	
	//------------------ [ConnectCfg] - #START ------------------
	/** Domyślny port */
	public final static int DEFAULT_PORT 			= 50403;
	
	/** O autorach (Może przenieść?) */
	public final static String ABOUT_AUTORS 		= "Autorzy stoczyli wiele walk... w imię sukcesu.";
	
	/** Czas timeouta (ms) */
	public final static int TIME_OF_TIMEOUT 		= 3000;
	
	/** Co ile pinguje (ms) */
	public final static int TIME_OF_PING 			= 1000;
	
	/** Zakres dozwolonych portów */
	public final static int[] PORT_RANGE			= {
		0x400,	//Minimum
		0xFFFF	//Maximum
	};
	
	
	
	//------------------ [ConnectCfg] - #END ------------------
	
	
	//------------------ [TableGameRules] - #START -----------------
	
	/** Czas ruchu gracza (wyr. w sekundach)*/
	public final static int[] PLAYER_MOVE_TIME 	=  {
			200, //Minimum
			400, //Maximum
			300  //Default
	};
	
	/** Wartość małej w ciemno (wyr. w jednostkach waluty)*/
	public final static int[] VALUE_SMALL_BLIND 	= {
			400, //Minimum
			800, //Maximum
			600  //Default
	};
	
	/** Wartość dużej w ciemno min 2*small blind dla każdego przedziału  (wyr. w jednostkach waluty)*/
	public final static int[] VALUE_BIG_BLIND 		= {
			800, //Minimum
			1600, //Maximum
			1200  //Default
	};
	
	
	/** Limit ilości graczy przy stole do gry (MIN/MAX/Default) */
	public final static int[] TAB_PLAYER_LIM= {
		2, //Minimum
		6,  //Maximum
		4 //Default
	};
	
	/** Limit ilości obserwatorów przy stole do gry (MIN/MAX/Default) */
	public final static int[] TAB_OBSERV_LIM= {
		2,  //Minimum
		50, //Maximum
		10  //Default
	};
	
	
	/** Długość opisu stołu |Ilość znaków| (MIN/MAX) */
	public final static int[] TAB_DESC_LIM= {
		10, //Minimum
		200  //Maximum
	};
	
	
	/** Długość nazwy stołu |Ilość znaków| (MIN/MAX) */
	public final static int[] TAB_NAME_LIM= {
		3, //Minimum
		20  //Maximum
	};

	
	/** Limit ilości stołów */
	public final static int TAB_LIMIT = 10000; 
	

	//------------------ [TableGameRules] - #END ------------------
	
	
	//------------------ [GameRules] - #START -----------------
	
	/** Zakresy dopuszczalnych wartości dla kolorów kart 
	 * 0 - Minimum
	 * 1 - Maximum
	 * */
	public final static int[] CARD_COL_CFG	= {
		1, //Minimum
		4  //Maximum
	};

	/** Zakresy dopuszczalnych wartości dla figur kart
	 * 0 - Minimum
	 * 1 - Maximum
	 * */
	public final static int[] CARD_FIG_CFG	= {
		1, //Minimum
		13  //Maximum
	};
	
	//------------------ [GameRules] - #END -----------------
	
	//------------------ [GameDesignCfg] - #START ------------------
	
	/** Kolory graczy/obserwatorów (Uczestników gry)  - RGB */
	public final static Color[] PARCIPANTS_COLOR 	= {
			Color.black, //Kolor gracza biorącego udział 
			Color.GREEN, //Kolor gracza w trybie All-in
			Color.RED, //Kolor gracza w trybie fold
			new Color(4, 5, 3), //Kolor obserwatora (Gray)
	};
	
	/** Kolory przycisków w menu - RGB */
	public final static Color[] M_BUTTONS_COLOR = {
			Color.YELLOW, //Kolor przycisku "Dealer"
			Color.GREEN, //Kolor przycisku "Check"
			Color.BLACK, //Kolor przycisku "Pozostałych przycisków"
			Color.RED, //Kolor przycisku "Fold"
	};
	
	

	
	//------------------ [GameDesignCfg] - #END ------------------
	
	//------------------ [GameObjectCfg] - #START ------------------
	

	/** Czas (z)/(roz)suwania sę karty (ms) */
	public final static int TIME_CARD_SLIDE = 3000;
	
	//------------------ [GameObjectCfg] - #END ------------------

	

	

}
